home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 20 / Cream of the Crop 20 (Terry Blount) (1996).iso / program / vsa256.zip / VSA_FONT.H < prev    next >
Text File  |  1996-02-17  |  20KB  |  912 lines

  1. /*............................... VSA_FONT.H .............. 2-17-96 ........*/
  2. /*    This is the font file for the VSA256 Graphics Library.  The basic     */
  3. /*  font size is set by the XCharBase and YCharBase values defined at the   */
  4. /*  top of this file.  This include file gives you the ability to fully     */
  5. /*  customize your fonts! Feel free to edit the font vertex lists to be as  */
  6. /*  personalized as possible.  Read on to see how it works.                 */
  7. /*                                                                          */
  8. /*   ASC[M][N] is a 2 dimensional array.  The M index selects one of 96     */
  9. /* possible characters and corresponds to the printable ASCII character     */
  10. /* codes from 32 to 127. (M = 0 selects ASCII character code 32 ... a space,*/
  11. /* M = 95 selects ASCII character code 127 ... DEL)                         */
  12. /*   For any given value of M, the N index steps through the vertex list    */
  13. /* for that character.  Each vertex takes up 3 locations.  The first of     */
  14. /* the 3 values is the blank code. A blank code of 0 means start a new line */
  15. /* segment (equivalent to "move_to").  A blank code of 1 means continue     */
  16. /* drawing (equivalent to "line_to").  A blank code of 255 means END of     */
  17. /* vertex list. You MUST end each vertex list this way!                     */
  18. /*   The next two values are x and y coordinates relative to the top left   */
  19. /* corner of the character cell.  The x and y values should never be more   */
  20. /* than XCharBase-1 and YCharBase-1 respectively.  When the blank code is   */
  21. /* 255, the x and y values are ignored.  A maximum of 23 verticies plus an  */
  22. /* END vertex are allowed per character.  Overrunning this limit will       */
  23. /* probably cause your PC to go woopie.                                     */
  24. /*                                                                          */
  25. /*   Starting with version 4.0 of this library, the user can change the     */
  26. /* number of possible characters in the font array.  If you want to         */
  27. /* increase the total number of characters, just change the '96' dimension  */
  28. /* below in the 'ASC[96][72]' declaration to the new desired number of      */
  29. /* characters.  Then make sure to fill out the remainder of the array.      */
  30. /*                                                                          */
  31. /*                               VERSION 4.0                                */
  32. /*                                                                          */
  33. /*        Copyright Spyro Gumas, 1992 - 1996.  All Rights Reserved.         */
  34. /*..........................................................................*/
  35.  
  36. /*..... 12-14-94   Added 'far' to declarations.                        .....*/
  37. /*.....  2-17-96   Now user can change '96' dimension of ASC array.    .....*/
  38.  
  39. unsigned far XCharBase = 8, far YCharBase = 16;
  40. unsigned char far ASC[96][72]={
  41. {                                                   /* ASCII 32   " "*/
  42. 255,  0,  0 },
  43. {                                                   /* ASCII 33   "!"*/
  44.     0,  3,  2,
  45.     1,  3,  7,
  46.     0,  3, 10,
  47.     1,  3, 11,
  48. 255,  0,  0 },
  49. {                                                   /* ASCII 34   """*/
  50.     0,  2,  2,
  51.     1,  2,  4,
  52.     0,  4,  2,
  53.     1,  4,  4,
  54. 255,  0,  0 },
  55. {                                                   /* ASCII 35   "#"*/
  56.     0,  2,  2,
  57.     1,  2, 11,
  58.     0,  4,  2,
  59.     1,  4, 11,
  60.     0,  0,  5,
  61.     1,  6,  5,
  62.     0,  0,  8,
  63.     1,  6,  8,
  64. 255,  0,  0 },
  65. {                                                   /* ASCII 36   "$"*/
  66.     0,  6,  4,
  67.     1,  5,  3,
  68.     1,  1,  3,
  69.     1,  0,  4,
  70.     1,  0,  5,
  71.     1,  1,  6,
  72.     1,  5,  6,
  73.     1,  6,  7,
  74.     1,  6,  9,
  75.     1,  5, 10,
  76.     1,  1, 10,
  77.     1,  0,  9,
  78.     0,  3,  2,
  79.     1,  3, 11,
  80. 255,  0,  0 },
  81. {                                                   /* ASCII 37   "%"*/
  82.     0,  6,  2,
  83.     1,  0, 11,
  84.     0,  1,  2,
  85.     1,  2,  2,
  86.     1,  3,  3,
  87.     1,  3,  4,
  88.     1,  2,  5,
  89.     1,  1,  5,
  90.     1,  0,  4,
  91.     1,  0,  3,
  92.     1,  1,  2,
  93.     0,  4,  8,
  94.     1,  5,  8,
  95.     1,  6,  9,
  96.     1,  6, 10,
  97.     1,  5, 11,
  98.     1,  4, 11,
  99.     1,  3, 10,
  100.     1,  3,  9,
  101.     1,  4,  8,
  102. 255,  0,  0 },
  103. {                                                   /* ASCII 38   "&"*/
  104.     0,  6, 10,
  105.     1,  1,  5,
  106.     1,  1,  3,
  107.     1,  2,  2,
  108.     1,  4,  2,
  109.     1,  5,  3,
  110.     1,  5,  5,
  111.     1,  0,  8,
  112.     1,  0, 10,
  113.     1,  1, 11,
  114.     1,  4, 11,
  115.     1,  5, 10,
  116.     1,  5,  8,
  117. 255,  0,  0 },
  118. {                                                   /* ASCII 39   "'"*/
  119.     0,  3,  2,
  120.     1,  3,  3,
  121.     1,  2,  4,
  122. 255,  0,  0 },
  123. {                                                   /* ASCII 40   "("*/
  124.     0,  4,  2,
  125.     1,  2,  4,
  126.     1,  2,  9,
  127.     1,  4, 11,
  128. 255,  0,  0 },
  129. {                                                   /* ASCII 41   ")"*/
  130.     0,  2,  2,
  131.     1,  4,  4,
  132.     1,  4,  9,
  133.     1,  2, 11,
  134. 255,  0,  0 },
  135. {                                                   /* ASCII 42   "*"*/
  136.     0,  3,  3,
  137.     1,  3,  9,
  138.     0,  0,  6,
  139.     1,  6,  6,
  140.     0,  1,  4,
  141.     1,  5,  8,
  142.     0,  5,  4,
  143.     1,  1,  8,
  144. 255,  0,  0 },
  145. {                                                   /* ASCII 43   "+"*/
  146.     0,  3,  3,
  147.     1,  3,  9,
  148.     0,  0,  6,
  149.     1,  6,  6,
  150. 255,  0,  0 },
  151. {                                                   /* ASCII 44   ","*/
  152.     0,  3, 11,
  153.     1,  3, 12,
  154.     1,  2, 13,
  155. 255,  0,  0 },
  156. {                                                   /* ASCII 45   "-"*/
  157.     0,  0,  6,
  158.     1,  6,  6,
  159. 255,  0,  0 },
  160. {                                                   /* ASCII 46   "."*/
  161.     0,  3, 11,
  162.     1,  3, 11,
  163. 255,  0,  0 },
  164. {                                                   /* ASCII 47   "/"*/
  165.     0,  6,  2,
  166.     1,  0, 11,
  167. 255,  0,  0 },
  168. {                                                   /* ASCII 48   "0"*/
  169.     0,  1,  2,
  170.     1,  5,  2,
  171.     1,  6,  3,
  172.     1,  6, 10,
  173.     1,  5, 11,
  174.     1,  1, 11,
  175.     1,  0, 10,
  176.     1,  0,  3,
  177.     1,  1,  2,
  178.     0,  6,  3,
  179.     1,  0,  9,
  180. 255,  0,  0 },
  181. {                                                   /* ASCII 49   "1"*/
  182.     0,  1,  4,
  183.     1,  3,  2,
  184.     1,  3, 11,
  185.     0,  1, 11,
  186.     1,  5, 11,
  187. 255,  0,  0 },
  188. {                                                   /* ASCII 50   "2"*/
  189.     0,  0,  2,
  190.     1,  5,  2,
  191.     1,  6,  3,
  192.     1,  6,  5,
  193.     1,  5,  6,
  194.     1,  1,  6,
  195.     1,  0,  7,
  196.     1,  0, 11,
  197.     1,  6, 11,
  198. 255,  0,  0 },
  199. {                                                   /* ASCII 51   "3"*/
  200.     0,  0,  3,
  201.     1,  1,  2,
  202.     1,  5,  2,
  203.     1,  6,  3,
  204.     1,  6,  5,
  205.     1,  5,  6,
  206.     1,  6,  7,
  207.     1,  6, 10,
  208.     1,  5, 11,
  209.     1,  1, 11,
  210.     1,  0, 10,
  211.     0,  2,  6,
  212.     1,  5,  6,
  213. 255,  0,  0 },
  214. {                                                   /* ASCII 52   "4"*/
  215.     0,  4, 11,
  216.     1,  4,  2,
  217.     1,  0,  6,
  218.     1,  0,  7,
  219.     1,  6,  7,
  220. 255,  0,  0 },
  221. {                                                   /* ASCII 53   "5"*/
  222.     0,  6,  2,
  223.     1,  0,  2,
  224.     1,  0,  5,
  225.     1,  1,  6,
  226.     1,  5,  6,
  227.     1,  6,  7,
  228.     1,  6, 10,
  229.     1,  5, 11,
  230.     1,  0, 11,
  231. 255,  0,  0 },
  232. {                                                   /* ASCII 54   "6"*/
  233.     0,  5,  2,
  234.     1,  2,  2,
  235.     1,  0,  4,
  236.     1,  0, 10,
  237.     1,  1, 11,
  238.     1,  5, 11,
  239.     1,  6, 10,
  240.     1,  6,  7,
  241.     1,  5,  6,
  242.     1,  0,  6,
  243. 255,  0,  0 },
  244. {                                                   /* ASCII 55   "7"*/
  245.     0,  0,  3,
  246.     1,  0,  2,
  247.     1,  6,  2,
  248.     1,  6,  4,
  249.     1,  2,  8,
  250.     1,  2, 11,
  251. 255,  0,  0 },
  252. {                                                   /* ASCII 56   "8"*/
  253.     0,  1,  2,
  254.     1,  5,  2,
  255.     1,  6,  3,
  256.     1,  6,  5,
  257.     1,  5,  6,
  258.     1,  6,  7,
  259.     1,  6, 10,
  260.     1,  5, 11,
  261.     1,  1, 11,
  262.     1,  0, 10,
  263.     1,  0,  7,
  264.     1,  1,  6,
  265.     1,  0,  5,
  266.     1,  0,  3,
  267.     1,  1,  2,
  268.     0,  1,  6,
  269.     1,  5,  6,
  270. 255,  0,  0 },
  271. {                                                   /* ASCII 57   "9"*/
  272.     0,  1, 11,
  273.     1,  3, 11,
  274.     1,  6,  8,
  275.     1,  6,  3,
  276.     1,  5,  2,
  277.     1,  1,  2,
  278.     1,  0,  3,
  279.     1,  0,  5,
  280.     1,  1,  6,
  281.     1,  6,  6,
  282. 255,  0,  0 },
  283. {                                                   /* ASCII 58   ":"*/
  284.     0,  3,  6,
  285.     1,  3,  6,
  286.     0,  3, 11,
  287.     1,  3, 11,
  288. 255,  0,  0 },
  289. {                                                   /* ASCII 59   ";"*/
  290.     0,  3,  6,
  291.     1,  3,  6,
  292.     0,  3, 11,
  293.     1,  3, 12,
  294.     1,  2, 13,
  295. 255,  0,  0 },
  296. {                                                   /* ASCII 60   "<"*/
  297.     0,  6,  2,
  298.     1,  0,  6,
  299.     1,  6, 10,
  300. 255,  0,  0 },
  301. {